package model

import (
	"github.com/spf13/cast"
	"os"
	"strings"
)

// GetEnvSec 从环境变量中获取 "Sec" 的值，并将其转换为整数。
// 如果转换后的值大于 0，则返回该值；否则返回默认值 60。
// 返回值:
//
//	int: 从环境变量中获取的秒数，若无效则返回默认值 60。
func GetEnvSec() int {
	// 从环境变量中获取 "Sec" 的值
	Sec := os.Getenv("sec")

	// 将获取到的字符串转换为整数
	s := cast.ToInt(Sec)

	// 检查转换后的值是否大于 0，如果是则返回该值，否则返回默认值 60
	if s > 0 {
		return s
	}
	return 60
}

// GetEnvIP6Url 获取环境变量中的IPv6 API地址，如果未设置或长度不足，则返回默认的IPv6 API地址。
// 该函数首先从环境变量中读取名为 "UrlIp6Api" 的值，如果该值不存在或长度小于等于10，
// 则使用默认的IPv6 API地址 "http://ipv6.liumou.site:22011/api"。
// 返回值:
//
//	string: 返回获取到的IPv6 API地址。
func GetEnvIP6Url() string {
	IP6Url := os.Getenv("UrlIp6Api")
	// 如果环境变量中的地址长度不足，则使用默认地址
	if len(IP6Url) <= 10 {
		IP6Url = "http://ipv6.liumou.site:22011/api"
	}
	return IP6Url
}

// GetEnvDebug 判断是否设置debug
func GetEnvDebug() bool {
	debug := os.Getenv("debug")
	if strings.EqualFold(debug, "true") {
		return true
	}
	return false
}
